package com.inray.nbs.controller;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;
import net.sf.json.JSONArray;

import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference;
import com.inray.nbs.bean.Fleet;
import com.inray.nbs.service.FleetService;

/**
 * 车辆车队控制类
 * FleetController
 * @author Ming Yang
 *
 */
@Controller
@RequestMapping(value = "/fleet")
public class FleetController {
	@Resource
	private FleetService fleetService;
//	/**
//	 * 加载车队列表
//	 * @throws IOException 
//	 */
//	@RequestMapping(value = "/selectFleetData.do", method=RequestMethod.POST  )
//	@ResponseBody
//	public void selectFleetData(HttpServletRequest request, HttpServletResponse response) throws IOException{
//		Map<String,Object> map = new HashMap<String,Object>();
//		int pageIndex = Integer.parseInt(request.getParameter("pageIndex"));
//	    int pageSize = Integer.parseInt(request.getParameter("pageSize")); 
//		String fleetname = request.getParameter("fleetname");
//		if(fleetname!=null&&!"".equals(fleetname.trim())){
//			map.put("fleetname","%"+fleetname+"%");
//		}
//		int total = fleetService.selectFleetData(map).size();
//		String sortField=request.getParameter("sortField");
//	    String sortOrder=request.getParameter("sortOrder");
//		if(sortField!=null&&sortOrder!=null){
//			if(!"".equals(sortField)&&!"".equals(sortOrder)){
//				map.put("sortField","a."+sortField+" "+sortOrder);
//			}else{
//				map.put("sortField","a.fleetid asc");
//			}
//		}else{
//			map.put("sortField","a.fleetid asc");
//		}
//		map.put("rows",  (pageIndex+1)*pageSize);
//		map.put("offset",((pageIndex+1)-1)* pageSize);
//		JSONObject result = new JSONObject();
//		result.clear();
//		result.put("total",total);
//		List<Fleet> list = fleetService.selectFleetData(map);
//		List<Fleet> rslst = new ArrayList<Fleet>();
//		for(Fleet f:list){
//			map = new HashMap<String,Object>();
//			map.put("fleetid", f.getFleetid());
//			List<Vehicle_info> vlist = fleetService.selectVehicleData(map);
//			f.setVehiclenum(vlist.size());		
//			rslst.add(f);
//		}
//		result.put("data", rslst);
//		String json = JSON.toJSONStringWithDateFormat(result, "yyyy-MM-dd HH:mm:ss");
//		response.getWriter().write(json);
//	}
//	/**
//	 * 加载车队下拉
//	 * @param request
//	 * @return
//	 */
//	@RequestMapping(value = "/selectFleetAll.do", method=RequestMethod.POST  )
//	@ResponseBody
//	public String selectFleetAll(HttpServletRequest request){
//		Map<String,Object> map = new HashMap<String,Object>();
////		List<Fleet> list = fleetService.selectFleetData(map);
//		List<Fleet> list = fleetService.selectFleetAll();
//		JSONArray json=new JSONArray();
//		return json.fromObject(list).toString();
//	}
//	/**
//	 * 车队编辑保存
//	 */
//	@RequestMapping(value = "/SaveFleetData.do", method=RequestMethod.POST  )
//	@ResponseBody
//	public String SaveFleetData(HttpServletRequest request, HttpServletResponse response) throws Exception
//	{
//		String result="1";
//	    try {
//			String json = request.getParameter("data");
//			List<String> list = JSON.parseObject(json, new TypeReference<List<String>>() {});
//			int size =list.size()-1;
//			for(int i=size;i>=0; i--){
//				Map<String, String> ssMap = JSON.parseObject(list.get(i), new TypeReference<Map<String, String>>() {});
//			    String state = ssMap.get("_state");
//			    if(state.equals("added"))	
//			    {
//			    	Fleet row=JSON.parseObject(list.get(i), Fleet.class);
//			    	 result=String.valueOf(fleetService.addFleet(row)); 
//			    }
//			    else if (state.equals("removed") || state.equals("deleted"))
//			    {
//			    	Fleet row=JSON.parseObject(list.get(i), Fleet.class);
//			    	result=String.valueOf(fleetService.delFleet(row));  
//			    }
//			    else if (state.equals("modified") || state.equals(""))	
//			    {
//			    	Fleet row=JSON.parseObject(list.get(i), Fleet.class);
//			    	result=String.valueOf(fleetService.editFleet(row));     
//			    }
//			}
//		} catch (Exception e) {
//			result=e.getMessage();
//			e.printStackTrace();
//		}
//	    return result;
//	}
//	
//	/**
//	 * 加载车型列表
//	 * @throws IOException 
//	 */
//	@RequestMapping(value = "/selectVehicleTypeData.do", method=RequestMethod.POST  )
//	@ResponseBody
//	public void selectVehicleTypeData(HttpServletRequest request, HttpServletResponse response) throws IOException{
//		Map<String,Object> map = new HashMap<String,Object>();
//		int pageIndex = Integer.parseInt(request.getParameter("pageIndex"));
//	    int pageSize = Integer.parseInt(request.getParameter("pageSize")); 
//		String name = request.getParameter("name");
//		if(name!=null&&!"".equals(name.trim())){
//			map.put("name","%"+name+"%");
//		}
//		int total = fleetService.selectVehicleTypeData(map).size();
//		String sortField=request.getParameter("sortField");
//	    String sortOrder=request.getParameter("sortOrder");
//		if(sortField!=null&&sortOrder!=null){
//			if(!"".equals(sortField)&&!"".equals(sortOrder)){
//				map.put("sortField","a."+sortField+" "+sortOrder);
//			}else{
//				map.put("sortField","a.id asc");
//			}
//		}else{
//			map.put("sortField","a.id asc");
//		}
//		map.put("rows",  (pageIndex+1)*pageSize);
//		map.put("offset",((pageIndex+1)-1)* pageSize);
//		JSONObject result = new JSONObject();
//		result.clear();
//		result.put("total",total);
//		List<Vehicle_type> list = fleetService.selectVehicleTypeData(map);
//		result.put("data", list);
//		String json = JSON.toJSONStringWithDateFormat(result, "yyyy-MM-dd HH:mm:ss");
//		response.getWriter().write(json);
//	}
//
//	/**
//	 * 加载车型下拉
//	 * @param request
//	 * @return
//	 */
//	@RequestMapping(value = "/selectVehicleTypeAll.do", method=RequestMethod.POST  )
//	@ResponseBody
//	public String selectVehicleTypeAll(HttpServletRequest request){
//		Map<String,Object> map = new HashMap<String,Object>();
//		List<Vehicle_type> list = fleetService.selectVehicleTypeData(map);
//		JSONArray json=new JSONArray();
//		return json.fromObject(list).toString();
//	}
//	/**
//	 * 加载电池下拉
//	 * @param request
//	 * @return
//	 */
//	@RequestMapping(value = "/selectBatAll.do", method=RequestMethod.POST  )
//	@ResponseBody
//	public String selectBatAll(HttpServletRequest request){
//		Map<String,Object> map = new HashMap<String,Object>();
//		List<Bat_info> list = fleetService.selectBatAll(map);
//		JSONArray json=new JSONArray();
//		return json.fromObject(list).toString();
//	}
//	/**
//	 * 车型编辑保存
//	 */
//	@RequestMapping(value = "/SaveVehicleTypeData.do", method=RequestMethod.POST  )
//	@ResponseBody
//	public String SaveVehicleTypeData(HttpServletRequest request, HttpServletResponse response) throws Exception
//	{
//		String result="1";
//	    try {
//			String json = request.getParameter("data");
//			List<String> list = JSON.parseObject(json, new TypeReference<List<String>>() {});
//			int size =list.size()-1;
//			for(int i=size;i>=0; i--){
//				Map<String, String> ssMap = JSON.parseObject(list.get(i), new TypeReference<Map<String, String>>() {});
//			    String state = ssMap.get("_state");
//			    if(state.equals("added"))	
//			    {
//			    	Vehicle_type row=JSON.parseObject(list.get(i), Vehicle_type.class);
//			    	 result=String.valueOf(fleetService.addVehicleType(row)); 
//			    }
//			    else if (state.equals("removed") || state.equals("deleted"))
//			    {
//			    	Vehicle_type row=JSON.parseObject(list.get(i), Vehicle_type.class);
//			    	result=String.valueOf(fleetService.delVehicleType(row));  
//			    }
//			    else if (state.equals("modified") || state.equals(""))	
//			    {
//			    	Vehicle_type row=JSON.parseObject(list.get(i), Vehicle_type.class);
//			    	result=String.valueOf(fleetService.editVehicleType(row));     
//			    }
//			}
//		} catch (Exception e) {
//			result=e.getMessage();
//			e.printStackTrace();
//		}
//	    return result;
//	}
//	
//	
//	/**
//	 * 加载车辆下拉
//	 * @param request
//	 * @return
//	 */
//	@RequestMapping(value = "/selectVehicleAll.do", method=RequestMethod.POST  )
//	@ResponseBody
//	public String selectVehicleAll(HttpServletRequest request,Integer fleetid,String vehicleids,Integer state,String clxhmh){
//		Long s=new Date().getTime();
//		Map<String,Object> map = new HashMap<String,Object>();
//		if(fleetid!=null){
//			map.put("fleetid", fleetid);
//		}
//		if(vehicleids!=null&&!"".equals(vehicleids)){
//			String[] arrvehicleids = vehicleids.split(",");
//			map.put("vehicleids", arrvehicleids);
//		}else{
//			Userinfo user1 = (Userinfo)request.getSession().getAttribute("user");
//			Userinfo user = fleetService.selectUserByOne(user1.getUserid());
//			if(user.getVehicleids()!=null&&!"".equals(user.getVehicleids())){
//				String[] arrvehicleids =user.getVehicleids().split(",");
//				map.put("vehicleids", arrvehicleids);
//			}
//		}
//		if(state!=null){
//			map.put("state", state);
//		}
//		if(clxhmh!=null&&clxhmh!=""){
//			map.put("clxhmh", "%"+clxhmh+"%");
//		}		
//		map.put("sortField","a.vehicleid asc");
//		List<Vehicle_info> list = fleetService.selectVehicleFleet(map);
//		JSONArray json=new JSONArray();
//		return json.fromObject(list).toString();
//	}
//	/**
//	 * 加载车辆列表
//	 * @throws IOException 
//	 */
//	@RequestMapping(value = "/selectVehicleData.do", method=RequestMethod.POST  )
//	@ResponseBody
//	public void selectVehicleData(HttpServletRequest request, HttpServletResponse response,Integer isnull,String vehicleids,Integer isrole) throws IOException{
//		Map<String,Object> map = new HashMap<String,Object>();
//		int pageIndex = Integer.parseInt(request.getParameter("pageIndex"));
//	    int pageSize = Integer.parseInt(request.getParameter("pageSize")); 
//		String name = request.getParameter("name");
//		if(name!=null&&!"".equals(name.trim())){
//			map.put("vehiclename","%"+name+"%");
//		}
//		if(isnull!=null){
//			map.put("isnull", isnull);
//		}
//		if(vehicleids!=null&&!"".equals(vehicleids)){
//			String[] arrvehicleids = vehicleids.split(",");
//			map.put("notvehicleids", arrvehicleids);
//		}
//		//if(isrole!=null){
//			Userinfo user1 = (Userinfo)request.getSession().getAttribute("user");
//			Userinfo user = fleetService.selectUserByOne(user1.getUserid());
//			if(user.getVehicleids()!=null&&!"".equals(user.getVehicleids())){
//				String[] arrvehicleids =user.getVehicleids().split(",");
//				map.put("vehicleids", arrvehicleids);
//			}
//		//}
//		String typeid = request.getParameter("typeid");
//		if(typeid!=null&&!"".equals(typeid.trim())&&!"0".equals(typeid.trim())){
//			map.put("typeid",Integer.parseInt(typeid));
//		}
//			String fleetid1 = request.getParameter("fleetid");
//			if(fleetid1!=null&&!"".equals(fleetid1.trim())&&!"0".equals(fleetid1.trim())){
//				map.put("fleetid",Integer.parseInt(fleetid1));
//			}
//		int total = fleetService.selectVehicleData(map).size();
//		String sortField=request.getParameter("sortField");
//	    String sortOrder=request.getParameter("sortOrder");
//		if(sortField!=null&&sortOrder!=null){
//			if(!"".equals(sortField)&&!"".equals(sortOrder)){
//				map.put("sortField","a."+sortField+" "+sortOrder);
//			}else{
//				map.put("sortField","a.vehicleid asc");
//			}
//		}else{
//			map.put("sortField","a.vehicleid asc");
//		}
//		if(isnull==null){
//			map.put("rows",  (pageIndex+1)*pageSize);
//			map.put("offset",((pageIndex+1)-1)* pageSize);
//		}
//		JSONObject result = new JSONObject();
//		result.clear();
//		result.put("total",total);
//		List<Vehicle_info> list = fleetService.selectVehicleData(map);
//		result.put("data", list);
//		String json = JSON.toJSONStringWithDateFormat(result, "yyyy-MM-dd HH:mm:ss");
//		response.getWriter().write(json);
//	}
//	
//	/**
//	 * 车辆编辑保存
//	 */
//	@RequestMapping(value = "/SaveVehicleData.do", method=RequestMethod.POST  )
//	@ResponseBody
//	public String SaveVehicleData(HttpServletRequest request, HttpServletResponse response) throws Exception
//	{
//		String result="1";
//	    try {
//			String json = request.getParameter("data");
//			List<String> list = JSON.parseObject(json, new TypeReference<List<String>>() {});
//			int size =list.size()-1;
//			for(int i=size;i>=0; i--){
//				Map<String, String> ssMap = JSON.parseObject(list.get(i), new TypeReference<Map<String, String>>() {});
//			    String state = ssMap.get("_state");
//			    if(state.equals("added"))	
//			    {
//			    	Vehicle_info row=JSON.parseObject(list.get(i), Vehicle_info.class);
//			    	 result=String.valueOf(fleetService.addVehicle(row)); 
//			    }
//			    else if (state.equals("removed") || state.equals("deleted"))
//			    {
//			    	Vehicle_info row=JSON.parseObject(list.get(i), Vehicle_info.class);
//			    	result=String.valueOf(fleetService.delVehicle(row));  
//			    }
//			    else if (state.equals("modified") || state.equals(""))	
//			    {
//			    	Vehicle_info row=JSON.parseObject(list.get(i), Vehicle_info.class);
//			    	result=String.valueOf(fleetService.editVehicle(row));     
//			    }
//			}
//		} catch (Exception e) {
//			result=e.getMessage();
//			e.printStackTrace();
//		}
//	    return result;
//	}
//	
//	/**
//	 * 车辆VIN验证
//	 * @param request
//	 * @param response
//	 * @param info
//	 * @return
//	 * @throws Exception
//	 */
//	@RequestMapping(value = "/CheackVin.do", method=RequestMethod.POST  )
//	@ResponseBody
//	public String CheackVin(HttpServletRequest request, HttpServletResponse response,Vehicle_info info) throws Exception
//	{
//		String result="1";
//	    try {
//	    	Map<String,Object> map = new HashMap<String,Object>();
//	    	map.put("vin", info.getVin());
//			List<Vehicle_info> list =  fleetService.selectVehicleData(map);
//			if(list.size()>0){
//				if(info.getVehicleid()!=null){
//					int num=0;
//					for(Vehicle_info v:list){
//						if(v.getVehicleid()!=info.getVehicleid()){
//							num++;
//						}
//					}
//					if(num>0){
//						result="0";
//					}
//				}else{
//					result="0";
//				}
//			}
//		} catch (Exception e) {
//			result=e.getMessage();
//			e.printStackTrace();
//		}
//	    return result;
//	}
//	
//	/**
//	 * 删除文件
//	 * @param request
//	 * @param response
//	 * @param filename
//	 * @return
//	 * @throws Exception
//	 */
//	@RequestMapping(value = "/DelFile.do", method=RequestMethod.POST  )
//	@ResponseBody
//	public String DelFile(HttpServletRequest request, HttpServletResponse response,String filename) throws Exception
//	{
//		String result="1";
//		String uploadPath = "/upload/excle/"; 
//		String saveDirectory = request.getSession().getServletContext().getRealPath(uploadPath);
//        String fileName = saveDirectory+"\\"+filename; // Excel文件所在路径
//        File file = new File(fileName);
//        boolean b = file.delete();
//        if(b==false){
//        	result="0";
//        }
//		return result;
//	}
//	/**
//	 * 车辆数据导入
//	 * @param request
//	 * @param response
//	 * @param filename
//	 * @return
//	 * @throws Exception
//	 */
//	@RequestMapping(value = "/ImportVehicle.do", method=RequestMethod.POST  )
//	@ResponseBody
//	public String ImportVehicle(HttpServletRequest request, HttpServletResponse response,String filename) throws Exception
//	{
//		String result="1";
//		String type=filename.substring(filename.lastIndexOf("."),filename.length());//文件类型
//		String uploadPath = "/upload/excle/"; 
//		String saveDirectory = request.getSession().getServletContext().getRealPath(uploadPath);
//        String fileName = saveDirectory+"\\"+filename; // Excel文件所在路径
//        File file = new File(fileName);
//        List<Vehicle_info> vehlst = new ArrayList<Vehicle_info>();
//        String vins="";
//		try {  
//			if(type.equals(".xls")){
//				//读取的是97版本
//				 Workbook wb = Workbook.getWorkbook(file);
//				  Sheet readsheet = wb.getSheet(0);  
//		          int rsColumns = readsheet.getColumns();
//		          int rsRows = readsheet.getRows();
//		          if(rsColumns==6){
//		        	  if(rsRows>1){
//		        		  for (int i = 1; i < rsRows; i++)   
//				          {   
//		        			  Vehicle_info newveh = new Vehicle_info();
//		        			  int isnull=0;
//				              for (int j = 1; j <rsColumns; j++)   
//				              {   
//				                  Cell cell = readsheet.getCell(j, i);  
//				                  if(j==1){
//				                	  if(cell.getContents()!=null&&!"".equals(cell.getContents())){
//				                		  vins+=cell.getContents()+",";
//				                		  newveh.setVin(cell.getContents());
//				                	  }else{
//				                		  isnull=1;
//				                		  break;
//				                	  }
//				                  }else if(j==2){
//				                	  newveh.setVehiclename(cell.getContents());;
//				                  }else if(j==3){
//				                	  newveh.setSim(cell.getContents());
//				                  }else if(j==4){
//				                	  newveh.setPack(cell.getContents());
//				                  }else if(j==5){
//				                	  newveh.setCharges(cell.getContents());
//				                  }
//				              }
//				              if(isnull==0){
//				            	  vehlst.add(newveh);
//				              }
//				          } 
//		        	  }else{
//		        		  result="2";
//		        	  }
//		        	  
//		          }else{
//		        	  result="3";
//		          }
//		          wb.close();
//			}else{//xlsx
//				//读取的是07版本
//				FileInputStream fis= new FileInputStream(fileName);
//				XSSFWorkbook xwb = new XSSFWorkbook(fis);  
//				XSSFSheet sheet = xwb.getSheetAt(0);  
//				XSSFRow row;  
//				String cell;  
//				int rsColumns = sheet.getPhysicalNumberOfRows();
//				if(rsColumns>0){
//					XSSFRow fisrt = sheet.getRow(0);  
//			        int rsRows = fisrt.getPhysicalNumberOfCells();
//			        if(rsRows==6){
//			        	if(rsColumns>1){
//							for (int i = 1; i < rsColumns; i++) {  
//							    row = sheet.getRow(i);  
//							    Vehicle_info newveh = new Vehicle_info();
//			        			int isnull=0;
//							    for (int j = 1; j <rsRows; j++) { 
//							    	if(row.getCell(j)!=null){
//							    		cell = row.getCell(j).toString(); 
//							    	}else{
//							    		cell = null; 
//							    	}
//							        if(j==1){
//					                	  if(cell!=null&&!"".equals(cell)){
//					                		  vins+=cell+",";
//					                		  newveh.setVin(cell);
//					                	  }else{
//					                		  isnull=1;
//					                		  break;
//					                	  }
//					                  }else if(j==2){
//					                	  newveh.setVehiclename(cell);;
//					                  }else if(j==3){
//					                	  newveh.setSim(cell);
//					                  }else if(j==4){
//					                	  newveh.setPack(cell);
//					                  }else if(j==5){
//					                	  newveh.setCharges(cell);
//					                  }
//							    }  
//							    if(isnull==0){
//					            	  vehlst.add(newveh);
//					            }
//							}  
//			        	}else{
//			        		result="2";
//			        	}
//			        }else{
//			        	 result="3";
//			        }
//				}else{
//					 result="2";
//				}
//				fis.close();
//			}
//			//解析后更改数据库
//			if(vehlst.size()>0){
//				Map<String,Object> map = new HashMap<String,Object>();
//				if(vins.length()>0){
//					map.put("vins", vins.substring(0, vins.length()-1).split(","));
//				}
//				List<Vehicle_info> oldveh = fleetService.selectOldVehicleData(map);
//				if(oldveh.size()>0){
//					for(Vehicle_info nein:vehlst){
//						int ishave =0;
//						for(Vehicle_info old : oldveh){
//							if(old.getVin().equals(nein.getVin())){
//								ishave=1;
//								nein.setVehicleid(old.getVehicleid());
//								break;
//							}
//						}
//						if(ishave==0){
//							result=String.valueOf(fleetService.ImportVehicle(nein));
//						}else{
//							result=String.valueOf(fleetService.ImportVehicleEdit(nein));
//						}
//					}
//				}else{
//					result=String.valueOf(fleetService.ImportVehicle(vehlst));
//				}
//			}
//			file.delete();
//        } catch (BiffException e) {  
//        	file.delete();
//            e.printStackTrace();  
//        } catch (IOException e) {  
//        	file.delete();
//            e.printStackTrace();  
//        }  
//	    return result;
//	}
//	/**
//	 * 分配车辆保存
//	 * @param request
//	 * @param response
//	 * @return
//	 * @throws Exception
//	 */
//	@RequestMapping(value = "/SaveVehicleDis.do", method=RequestMethod.POST  )
//	@ResponseBody
//	public String SaveVehicleDis(HttpServletRequest request, HttpServletResponse response,Integer fleetid) throws Exception
//	{
//		String result="1";
//	    try {
//			String json = request.getParameter("data");
//			fleetService.romveVehicleFleet(fleetid);
//				List<String> list = JSON.parseObject(json, new TypeReference<List<String>>() {});
//				int size =list.size()-1;
//				String ids = "";
//				for(int i=size;i>=0; i--){
//					Vehicle_info row=JSON.parseObject(list.get(i), Vehicle_info.class);
//					if(i==size){
//						ids+=row.getVehicleid();
//					}else{
//						ids+=","+row.getVehicleid();
//					}
//				}
//				Map<String,Object> map = new HashMap<String,Object>();
//				map.put("fleetid", fleetid);
//				if(!"".equals(ids)){
//					String[] arrid = ids.split(",");
//					map.put("arrid", arrid);
//					fleetService.SaveVehicleDis(map);
//				}
//		} catch (Exception e) {
//			result=e.getMessage();
//			e.printStackTrace();
//		}
//	    return result;
//	}
//	/**
//	 * 加载电池列表
//	 * @param request
//	 * @param response
//	 * @return
//	 * @throws IOException
//	 */
//	@RequestMapping(value = "/selectBatData.do", method=RequestMethod.POST  )
//	@ResponseBody
//	public void selectBatData(HttpServletRequest request, HttpServletResponse response) throws IOException{
//		Map<String,Object> map = new HashMap<String,Object>();
//		int pageIndex = Integer.parseInt(request.getParameter("pageIndex"));
//	    int pageSize = Integer.parseInt(request.getParameter("pageSize")); 
////		String batpage = request.getParameter("batpage");
////		if(batpage!=null&&!"".equals(batpage.trim())){
////			map.put("batpage","%"+batpage+"%");
////		}
//	    
//		int total = fleetService.selectBatData(map).size();
//		String sortField=request.getParameter("sortField");
//	    String sortOrder=request.getParameter("sortOrder");
//		if(sortField!=null&&sortOrder!=null){
//			if(!"".equals(sortField)&&!"".equals(sortOrder)){
//				map.put("sortField","a."+sortField+" "+sortOrder);
//			}else{
//				map.put("sortField","a.batid asc");
//			}
//		}else{
//			map.put("sortField","a.batid asc");
//		}
//		map.put("rows",  (pageIndex+1)*pageSize);
//		map.put("offset",((pageIndex+1)-1)* pageSize);
//		JSONObject result = new JSONObject();
//		result.clear();
//		result.put("total",total);
//		List<Bat_info> list = fleetService.selectBatData(map);
//		List<Bat_info> rslst = new ArrayList<Bat_info>();
//		for(Bat_info bat:list){
//			map = new HashMap<String,Object>();
//			map.put("batid", bat.getBatid());
//			List<Bat_page> blist = fleetService.selectBatPageData(map);
//			bat.setBatpagenum(blist.size());
//			rslst.add(bat);
//		}
//		result.put("data", rslst);
//		String json = JSON.toJSONStringWithDateFormat(result, "yyyy-MM-dd HH:mm:ss");
//		response.getWriter().write(json);
//	}
//	/**
//	 * 加载电池列表
//	 * @param request
//	 * @param response
//	 * @return
//	 * @throws IOException
//	 */
//	@RequestMapping(value = "/selectBatPageData.do", method=RequestMethod.POST  )
//	@ResponseBody
//	public void selectBatPageData(HttpServletRequest request, HttpServletResponse response) throws IOException{
//		Map<String,Object> map = new HashMap<String,Object>();
//		int pageIndex = Integer.parseInt(request.getParameter("pageIndex"));
//	    int pageSize = Integer.parseInt(request.getParameter("pageSize")); 
////		String batpage = request.getParameter("batpage");
////		if(batpage!=null&&!"".equals(batpage.trim())){
////			map.put("batpage","%"+batpage+"%");
////		}
//	    int batid=Integer.parseInt(request.getParameter("batid")); 
//	    map.put("batid", batid);
//		int total =fleetService.selectBatPageData(map).size();
//		String sortField=request.getParameter("sortField");
//	    String sortOrder=request.getParameter("sortOrder");
//		if(sortField!=null&&sortOrder!=null){
//			if(!"".equals(sortField)&&!"".equals(sortOrder)){
//				map.put("sortField","a."+sortField+" "+sortOrder);
//			}else{
//				map.put("sortField","a.pageid asc");
//			}
//		}else{
//			map.put("sortField","a.pageid asc");
//		}
//		map.put("rows",  (pageIndex+1)*pageSize);
//		map.put("offset",((pageIndex+1)-1)* pageSize);
//		JSONObject result = new JSONObject();
//		result.clear();
//		result.put("total",total);
//		List<Bat_page> list = fleetService.selectBatPageData(map);
//		result.put("data", list);
//		String json = JSON.toJSONStringWithDateFormat(result, "yyyy-MM-dd HH:mm:ss");
//		response.getWriter().write(json);
//		
//	}
//	/**
//	 * 电池编辑保存
//	 */
//	@RequestMapping(value = "/SaveBatData.do", method=RequestMethod.POST  )
//	@ResponseBody
//	public String SaveBatData(HttpServletRequest request, HttpServletResponse response) throws Exception
//	{
//		String result="1";
//	    try {
//			String json = request.getParameter("data");
//			List<String> list = JSON.parseObject(json, new TypeReference<List<String>>() {});
//			int size =list.size()-1;
//			for(int i=size;i>=0; i--){
//				Map<String, String> ssMap = JSON.parseObject(list.get(i), new TypeReference<Map<String, String>>() {});
//			    String state = ssMap.get("_state");
//			    if(state.equals("added"))	
//			    {
//			    	Bat_info row=JSON.parseObject(list.get(i), Bat_info.class);
//			    	 result=String.valueOf(fleetService.addBat_info(row)); 
//			    }
//			    else if (state.equals("removed") || state.equals("deleted"))
//			    {
//			    	Bat_info row=JSON.parseObject(list.get(i), Bat_info.class);
//			    	result=String.valueOf(fleetService.delBat_info(row));  
//			    }
//			    else if (state.equals("modified") || state.equals(""))	
//			    {
//			    	Bat_info row=JSON.parseObject(list.get(i), Bat_info.class);
//			    	result=String.valueOf(fleetService.editBat_info(row));     
//			    }
//			}
//		} catch (Exception e) {
//			result=e.getMessage();
//			e.printStackTrace();
//		}
//	    return result;
//	}
//	/**
//	 * 电池包编辑保存
//	 */
//	@RequestMapping(value = "/SaveBatPageData.do", method=RequestMethod.POST  )
//	@ResponseBody
//	public String SaveBatPageData(HttpServletRequest request, HttpServletResponse response) throws Exception
//	{
//		String result="1";
//	    try {
//			String json = request.getParameter("data");
//			List<String> list = JSON.parseObject(json, new TypeReference<List<String>>() {});
//			int size =list.size()-1;
//			for(int i=size;i>=0; i--){
//				Map<String, String> ssMap = JSON.parseObject(list.get(i), new TypeReference<Map<String, String>>() {});
//			    String state = ssMap.get("_state");
//			    if(state.equals("added"))	
//			    {
//			    	Bat_page row=JSON.parseObject(list.get(i), Bat_page.class);
//			    	 result=String.valueOf(fleetService.addBatPage(row)); 
//			    }
//			    else if (state.equals("removed") || state.equals("deleted"))
//			    {
//			    	Bat_page row=JSON.parseObject(list.get(i), Bat_page.class);
//			    	result=String.valueOf(fleetService.delBatPage(row));  
//			    }
//			    else if (state.equals("modified") || state.equals(""))	
//			    {
//			    	Bat_page row=JSON.parseObject(list.get(i), Bat_page.class);
//			    	result=String.valueOf(fleetService.editBatPage(row));     
//			    }
//			}
//		} catch (Exception e) {
//			result=e.getMessage();
//			e.printStackTrace();
//		}
//	    return result;
//	}
	
}
